cormoran.me



MacでiBeacon発信

MacをiBeaconの発信器にしてみました。

せっかくiPhone持ってるのだからiBeaconの発信器作って遊びたいなと以前から思っていたのですが、調べてみたところMacがiBeaconの発信器になるとの情報を発見しました。よくよく考えるとiBeaconはBluetooth4.0のBLE規格を使ってるので、それが使える計算機なら発信器にできるのも無理はありません。

 MacでiBeacon発信器には、調べた限りではBeaconOSXというMacアプリを作ってやるものとnode.jsを使ったものが手軽な方法として見つかりました。ちょっとNode.jsを触ってみたいという思いもあったので今回はNode.jsを使った方法を試してみました。

Node.jsのインストール

 まずNode.jsとそのパッケージマネージャnpmをインストールします。自分はMacPortsを使いました。http://nodejs.org/から.pkgファイルを落としてきてインストールする方法もあります。

language: ?
1 2 3 4 5 sudo port install nodejs sudo port install npm

iBeacon

次にiBeaconを使うためのモジュール(と思われる)bleaconをnpmでインストールします。どこにインストールしたら良いのかNode.js初心者なのでよくわかってないのですがiBeacon専用にフォルダを作ってそこにインストールしたら良いようです。以下はホームディレクトリ下にiBeaconというなのフォルダを作って、その下にbleaconを入れる例。

language: ?
1 2 3 4 5 6 7 mkdir ~/iBeacon cd ~/iBeacon npm install bleacon

以下のファイルをiBeacon下にbeacon.jsという名で作る

language: ?
1 2 3 4 5 6 7 8 9 10 11 12 13 var Bleacon = require(‘bleacon’); var uuid = ‘AAAAAAAABBBBCCCCDDDDEEEEEEEEEEEE'; var major = 100; var minor = 50; var measuredPower = -59; Bleacon.startAdvertising(uuid, major, minor, measuredPower);

実行

language: ?
1 2 3 node ./beacon.js

これで発信します。(BluetoothをONにしておく)

受信側はiPhoneでBLUETUS for iBeaconというアプリを使いました。こいつは探索対象UUIDの初期値がAAAAAAAA-BBBB-CCCC-DDDD-EEEEEEEEEEEEになっていたので上のプログラムを実行するとこのアプリで探知できるはずです。

下は受信結果です。

詳しいことはまた調べるつもりなのでこれを使って何か作るかもしれません。